
ESP-VISION:开启低代码端侧 AI 视觉开发新体验
简介
ESP-VISION 是乐鑫推出的低代码端侧 AI 视觉开源硬件:包含 ESP32-P4X / ESP32-S31 双板,可替换摄像头;十几行 Python 跑通采集→推理→显示。
简介:ESP-VISION 是乐鑫推出的低代码端侧 AI 视觉开源硬件:包含 ESP32-P4X / ESP32-S31 双板,可替换摄像头;十几行 Python 跑通采集→推理→显示。开源协议
:GPL 3.0
描述
ESP-VISION:开启低代码端侧 AI 视觉开发新体验
项目简介
让端侧视觉,简单得只剩下想法。
ESP-VISION 开源视觉硬件是乐鑫面向 端侧 AI 视觉 的专用开发板,包含 ESP32-P4X 与 ESP32-S31 (待发布)两款主控版本,并支持替换不同型号的摄像头,让机器视觉开发回归到 几行 Python 跑通一个想法。
它以 低代码 为核心:摄像头采集、图像处理、视频编解码与模型推理都被封装进统一的 MicroPython API(sensor / image / display / espdl),延续 OpenMV 风格的脚本化体验 —— 十几行代码,就是一个完整的视觉应用,采集、推理、显示、推流,一气呵成。
借助板载 ESP-DL 推理框架,人脸检测、目标检测、姿态估计等 AI 模型 在设备端实时运行,自己训练的 .espdl / .tflite 模型也能直接部署上板 —— 无需服务器,无需联网。配合浏览器一键烧录与 Web IDE,从拿到板子到看见检测框,只需几分钟;开发过程中还能通过 ESP-VISION 提供的 MCP 服务(https://mcp.vision.espressif.com)接入 Claude、Cursor 等 AI 编程工具,让 AI 读懂 ESP-VISION 帮你写脚本。
版本更新记录
V1.0 · 2026-06-26
- 发布 ESP32-P4X-VISION 板。
关于固件
烧进去的不只是固件,而是一整套 Python 视觉开发环境。
板卡运行 ESP-VISION 固件(MicroPython + ESP-DL/TFLiteMicro),提供统一的 Python 视觉 API:
sensor—— 摄像头采集(复位、像素格式、分辨率、抓帧)image—— 图像处理(绘制、滤波、颜色追踪、帧差、边缘检测、模板匹配)display—— 屏幕/输出espdl/tflite—— 端侧模型推理(ESPDet、YOLO11、YOLO11nPose、tflite.Model)
模型扩展:可基于 PyTorch / TensorFlow 模型经 ESP-DL 工具链量化为 .espdl / .tflite,放入板级存储后在脚本中加载运行;框架已封装预处理、推理与后处理。
在线烧录:固件无需本地工具链,直接在 ESP-VISION 官网 用桌面版 Chrome / Edge 连板一键烧录,并跳转 Web IDE 编程。
核心亮点
一块为视觉而生的板子,把复杂留给芯片,把简单交给你。
- 两款互补板卡,统一开发体验 —— ESP32-P4X(视觉旗舰)与 ESP32-S31(轻量端侧),同一套 ESP-VISION API,按负载选板。
- 板载摄像头,开箱即取景 —— 上电即可采集图像,配合 Web IDE 实时预览。
- 低代码 Python 开发 —— OpenMV 风格脚本化体验,
sensor/image/display/espdl统一 API。 - 端侧 AI 推理 —— 支持 ESPDet Pico(猫/狗/人脸/手部)、YOLO11n、YOLO11n-Pose 等内置模型,也可部署自定义
.espdl/.tflite模型。 - 浏览器一键烧录 + Web IDE —— 无需本地环境,Chrome/Edge 连板即可烧录固件并跳转在线编程。
- 完全开源 —— 原理图、PCB、BOM、结构件与示例脚本全部开放。
板卡阵容
| 维度 | ESP32-P4X-VISION | ESP32-S31-VISION |
|---|---|---|
| 定位 | 视觉旗舰 / 视频流 + 高负载 AI | 轻量端侧感知 / 图像处理 + 轻量推理 |
| 图像加速 | ISP + PPA | PPA |
| 视频编解码 | 硬件 H.264 + 硬件 JPEG | 硬件 JPEG |
| 视频流(RTSP / H.264) | ✅ | ❌ |
| 端侧 AI 推理 | ✅ ESP-DL / TFLite | ✅ ESP-DL / TFLite |
| 适用场景 | 实时视频处理、目标检测、姿态估计、推流 | 图像采集、颜色/标记识别、轻量检测、交互 |
两款板共用同一套 ESP-VISION 固件 API;ESP32-P4X 额外提供视频流与更高图像处理负载能力。
功能展示
接上摄像头,它就开始读懂眼前的世界。
人脸、颜色、二维码、AprilTag、目标、姿态 —— 这些经典视觉能力,在 ESP-VISION 上都只是几行 Python 的距离,且全部在板上 实时运行。下面每一项,都可以亲手跑一遍。
> 以下演示 demo 均基于 ESP32-P4X-EYE 硬件实现,后续将在 ESP32-P4X-VISION 上添加 LCD 子板。
目标检测
端侧实时检测并跟踪画面中的人脸,可用于取景居中、交互唤醒、签到门禁。
|
|
颜色追踪
基于 LAB 颜色空间实时筛选并跟踪指定颜色的目标,适合颜色分拣与目标跟随。
|
|
二维码识别
检测并解码画面中的二维码,可用于设备配网、资产识别、物流追踪与门禁。
|
|
AprilTag 检测
识别并解码 AprilTag 标记,可用于机器人导航、空间定位与增强现实。
|
|
复刻教程
ESP32-P4X-VISION 由 主板 与 SC101IOT 摄像头子板 两部分组成,复刻时建议分别下单打样和贴片;由于摄像头链路需要主板与子板插接后才能完整工作,功能验证应在整机装配完成后进行。
1. 主板打样与贴片
主板按开源工程中的 Gerber、BOM 和坐标文件下单 PCB 与 SMT。主板器件较多,包含 ESP32-P4、Flash、USB-C、TF 卡座、DCDC、电源保护、WS2812、按键和 40Pin 板对板连接器。
贴片完成后先进行外观与短路检查,确认无明显焊接问题后再装配摄像头子板:
- 检查 USB-C、TF 卡座、40Pin 板对板连接器是否存在连锡、偏位或虚焊。
- 使用万用表确认
USB_5V、VIN、ESP_3V3、CAM_2V8与 GND 之间无短路。 - 检查 BOOT、RST 按键和黄铜螺母安装位置,避免后续装配时与摄像头子板干涉。
2. SC101IOT 摄像头子板打样与贴片
摄像头子板同样按对应工程文件单独打样,主要包含 24Pin 摄像头 FPC 座、40Pin 板对板连接器、摄像头电源去耦电容和补光 LED。该子板用于把 SC101IOT 摄像头模组的 DVP、I2C、时钟、复位、掉电和补光信号转接到主板。
贴片时需要特别注意 24Pin FPC 座与 40Pin 板对板连接器方向,连接器反贴或偏位会导致摄像头无法插接或信号错位。焊接完成后,先检查 CAM_2V8、ESP_3V3 与 GND 是否短路,再进行装配。
3. 摄像头模组安装
打开子板上的 24Pin FPC 座锁扣,将 SC101IOT 摄像头模组排线平直插入 FPC 座,确认金手指方向与座子方向一致后压下锁扣固定。插接完成后轻拉排线,确认排线没有松脱。
摄像头模组安装完成后,将摄像头本体贴在子板正面预留位置。可使用薄双面胶、泡棉胶或 3M 胶固定,粘贴前建议先确认摄像头视场方向与外壳开孔方向一致。粘贴时不要遮挡镜头、补光 LED 或 FPC 排线活动区域。
4. 主板与摄像头子板装配
将已安装摄像头模组的 SC101IOT 摄像头子板 40Pin 板对板连接器对准主板上的 Camera Socket,垂直向下压合,确保连接器完全插入且子板与主板平行。不要斜插或左右晃动连接器,以免损坏 0.4mm 间距触点。
连接器插接到位后,使用 2 颗 M2 × 3mm 螺丝 将摄像头子板固定到主板预装的黄铜螺母上。螺丝只需拧紧到子板不松动即可,避免过度用力造成 PCB 变形或连接器受力。
5. 固件烧录与功能验证
装配完成后,通过 USB Serial/JTAG 口烧录 ESP-VISION 固件,或使用 ESP-VISION 官网的浏览器一键烧录功能完成固件下载。首次上电建议观察串口日志,确认主控启动、摄像头初始化和图像采集无异常。
验证顺序建议为:
- 确认
ESP_3V3与CAM_2V8电压稳定。 - 运行摄像头采集示例,检查是否可以正常取图。
- 测试 WS2812 状态灯与
FLASH_LED补光控制。 - 插入 TF 卡后,验证模型、图片或日志文件读写是否正常。
硬件电路设计说明
ESP32-P4X-VISION
ESP32-P4X-VISION 以 ESP32-P4 为主控,围绕端侧视觉应用集成了摄像头接口、USB 高速通信、TF 卡、本地补光和状态指示等电路。
整体硬件框图如下:
硬件连接关系可概括为:
USB-C 供电/通信
│
├─ 5V 输入(防反灌)
│ ├─ 3.3V 系统电源:ESP32-P4、Flash、TF 卡、WS2812
│ └─ 2.8V 摄像头电源:摄像头模组模拟/IO 供电
│
ESP32-P4 ├─ USB High Speed:连接 USB-C,用于高速数据传输
├─ USB Serial/JTAG:连接 USB-C,用于下载、调试与串口日志
├─ Camera Socket:支持 DVP 8-bit 与 MIPI-CSI 摄像头信号
├─ SPI Flash:程序与资源存储
├─ TF Card:外部数据 / 模型 / 图片资源存储
├─ Flash LED:摄像头补光
├─ WS2812 RGB LED:状态指示
└─ Expansion GPIO:二次开发引脚
供电方案:板上提供两个 USB-C 接口,其中一路用于 ESP32-P4 的 USB High Speed,另一路用于 USB Serial/JTAG 下载调试,两路 USB 5V 通过二极管汇入 USB_5V,再生成系统输入电源 VIN,避免不同 USB 口之间反灌。主电源使用 TLV62569DBVR 降压生成 ESP_3V3,供主控、Flash、TF 卡和板载外设使用;摄像头电源由 ME6211C28M5G-N LDO 从 3.3V 生成 CAM_2V8。ESP32-P4 内部核心、PSRAM/Flash IO 等电压域按照芯片推荐电路由片上 LDO / DCDC 及外围电感、电容完成去耦和供电。
主控与存储:ESP32-P4 外接 40MHz 晶振,ESP_EN 与 GPIO0 配合按键完成复位和下载模式选择。外部 SPI Flash 接到 FLASH_CS、FLASH_CK、FLASH_D、FLASH_Q、FLASH_WP、FLASH_HD,用于固件和资源存储。TF 卡座使用 4-bit SDIO 信号 SD1_D0、SD1_D1、SD1_D2、SD1_D3、SD1_CMD、SD1_CLK,并提供 SD_DET 卡检测信号,适合存放模型、图片、日志或用户数据。
摄像头接口设计:使用 40Pin 板对板连接器作为主板于摄像头子板的连接器,其同时引出 DVP 与 MIPI-CSI 信号,便于适配不同摄像头模组。DVP 侧包含 DVP_D0 ~ DVP_D7、DVP_PCLK、DVP_VSYNC、DVP_HREF、CAM_XCLK、CAM_RESET、CAM_PWDN;配置通道为 CAM_I2C_SDA / CAM_I2C_SCL,并通过 2.2k 上拉到 ESP_3V3。MIPI-CSI 侧引出 2-lane 差分信号 CSI_DATA0P/N、CSI_DATA1P/N 与 CSI_CLKP/N。摄像头座同时提供 ESP_3V3、CAM_2V8 与多组 GND,原理图中还预留 DVP_IR_CUT、DVP_GM_FK 和 FLASH_LED 等相机模组扩展信号。
板载外设与调试:闪光灯由 FLASH_LED_CTRL 控制,硬件测试工程对应 GPIO12,高电平点亮;WS2812 RGB LED 由 RGB_CTRL 控制,硬件测试工程对应 GPIO9。USB Serial/JTAG 口连接 U0TXD、U0RXD 及 USB Serial/JTAG 差分信号,便于固件下载和日志输出;USB High Speed 口连接 ESP32-P4 原生 USB PHY,用于高速图像数据输出,例如将开发板枚举为 USB 摄像头。
二次开发引脚:原理图提供 Expansion GPIO 扩展区域,引出了多路 ESP32-P4 GPIO 与电源、地信号,可用于外接按键、传感器、舵机、补光控制或其他低速外设。这些引脚不与摄像头、SD 卡等外设复用,可放心使用。
ESP32-S31-VISION
当前暂未发布 ESP32-S31 版本的 ESP-VISION 开发板,敬请期待!
摄像头子板
- SC101IOT
SC101IOT 摄像头子板用于将 SC101IOT DVP 摄像头模组接入 ESP32-P4X-VISION 主板。子板一侧提供 24Pin 摄像头 FPC 座,另一侧通过 40Pin 板对板连接器与主板的 Camera Socket 对接,将摄像头的 DVP 并口、SCCB/I2C 配置总线、电源、复位、掉电控制和补光灯控制信号统一转接到主板。
接口与信号:24Pin FPC 侧引出 DVP_D0 ~ DVP_D7、DVP_PCLK、DVP_VSYNC、DVP_HREF、CAM_XCLK、CAM_RESET、CAM_PWDN、CAM_I2C_SCL 和 CAM_I2C_SDA,对应 SC101IOT 模组的图像数据、像素时钟、帧同步、行同步、外部时钟、复位/掉电控制以及寄存器配置通道。40Pin 板对板连接器侧与主板摄像头座保持同名网络连接。
供电与补光:子板使用主板提供的 CAM_2V8 作为摄像头 AVDD 与 DOVDD 供电。FLASH_LED 信号控制两颗补光 LED,LED 由 ESP_3V3 供电并串联 3.9Ω 限流电阻,适合在低照度场景下配合主板 GPIO 实现补光控制。
主要物料清单
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。










